#include <stdio.h>

/*
定义一个指针，指向一个整形变量，然后输出值
参考：
https://www.runoob.com/cprogramming/c-pointers.html
*/

int main()
{
    int a = 10;
    int *p = &a;
    printf("%p\n", p);  // 0061FF14
    printf("%d\n", *p); // 10

    // char b = 50;
    char b = '2';
    char *p2 = &b;
    printf("%p\n", p2);  // 0061FF13
    printf("%d\n", *p2); // 50
    printf("%c\n", *p2); // 2

    // 空指针
    int *p3 = NULL;
    printf("p3 的地址是 %p\n", p3); // 00000000

    // 判断是否为空
    if (p2)
    {
        printf("p2不为空"); // 成立，输出
    }
    if (p3)
    {
        printf("p3不为空"); // 不成立，不输出
    }
    return 0;
}